package ch.sfug.player{

	import flash.events.IEventDispatcher;
	import flash.media.SoundTransform;

	public interface IMediaPlayer extends IEventDispatcher {
		
		/**
		 * sets or gets the sound transform
		 */
		function get soundTransform():SoundTransform;
		/** @private */
		function set soundTransform( st:SoundTransform ):void;
		
		/**
		 * gets the time
		 */
		function get time():Number;
		function get duration():Number;
		
		/**
		* start play
		*/
		function play():void;

		/**
		* pause player
		*/
		function pause():void;

		/**
		* stops the player
		*/
		function stop():void;
		
		/**
		 * ends and closes playback
		 */
		function end():void;

		/**
		* seek to specified time
		* @param	time	ms to play
		*/
		function seek(time:Number):void;

		/**
		* checks if the player is playing
		* @return	
		*/
		function isPlaying():Boolean;

		/**
		* checks if the player is paused
		* @return	
		*/
		function isPaused():Boolean;

		/**
		* checks if the player is stopped
		* @return	
		*/
		function isStopped():Boolean;

		/**
		* checks if the palyer ist at end
		* @return	
		*/
		function isAtEnd():Boolean;
	}

}

